<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
  <meta name="generator" content=
  "HTML Tidy for Linux/x86 (vers 25 March 2009), see www.w3.org">
  <meta http-equiv="Content-Language" content="en-us">
  <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
  <meta name="ProgId" content="FrontPage.Editor.Document">
  <meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">

  <title>:: SmartGUI Creator ::</title>
  <style type="text/css">
<!--
  td { font-family: Verdana, Arial, Helvetica, sans-serif }
  .bodyline       { background-color: #FFFFFF; border: 1px #98AAB1 solid; }

  .forumline      { background-color: #FFFFFF; border: 2px #006699 solid; }

  td.row1 { background-color: #EFEFEF; }
  .postbody { font-size : 12px; line-height: 18px}
  a:link { color : #006699; }
  a:link.postlink { text-decoration: none; color : #006699 }
  -->
  </style>
  <style type="text/css">
body {
  background-color: #003399;
  }
  :link { color: #006699 }
  :visited { color: #006699 }
  :active { color: #0000FF }
  body.c37 {font-size: 10px; font-family: Verdana;}
  span.c36 {font-family: Verdana; font-size: 80%; font-weight: bold; text-decoration: underline}
  span.c35 {font-family: Verdana; font-weight: bold}
  span.c34 {font-family: Verdana; font-weight: 700; text-decoration: underline}
  span.c33 {font-size: 9pt; font-weight: 700;}
  p.c32 {color: #808000; font-family: Verdana}
  table.c31 {border-collapse: collapse;}
  span.c30 {color: #808000; font-family: Verdana; font-size: 9pt}
  span.c29 {font-weight: bold;}
  span.c28 {font-weight: 700; text-decoration: underline;}
  span.c27 {font-size: 9pt; font-weight: bold}
  span.c26 {text-decoration: underline}
  p.c25 {font-family: Verdana}
  span.c24 {background-color: rgb(255, 255, 255); text-decoration: underline}
  p.c23 {color: #006699; font-family: Verdana}
  span.c22 {font-family: Verdana; font-size: 9pt}
  span.c21 {font-size: 9pt;}
  span.c20 {font-family: Verdana; text-decoration: underline}
  span.c19 {font-family: Verdana; font-size: 80%; font-weight: bold}
  div.c18 {text-align: center}
  span.c17 {color: #800000; font-family: Tahoma}
  table.c16 {background-color: #FFFFFF; border-collapse: collapse}
  span.c15 {color: #003399; font-family: Verdana; font-size: 80%}
  span.c14 {color: #003399; font-family: Verdana; font-weight: bold}
  span.c13 {font-family: Verdana; font-size: 80%}
  span.c12 {font-family: Verdana}
  p.c11 {text-align: center}
  span.c10 {font-family: Verdana; font-size: 150%; line-height: normal}
  span.c9 {color: #808080; font-family: Verdana; font-size: 150%; line-height: normal; text-decoration: underline}
  span.c8 {font-family: Verdana; font-size: 150%}
  span.c7 {color: rgb(0, 102, 255); font-style: italic; font-weight: bold; line-height: normal; text-decoration: underline}
  span.c6 {line-height: normal;}
  p.c5 {text-align: right}
  span.c4 {font-family: Tahoma}
  span.c3 {font-family: Tahoma; font-size: 70%}
  span.c2 {background-color: rgb(204, 255, 255);}
  span.c1 {font-family: Verdana; font-size: 70%}
  </style>
</head>

<body class="c37">
  <table class="c16" id="AutoNumber1" border="1" bordercolor="#111111" cellpadding="0"
  cellspacing="0" width="100%">
    <tbody>
      <tr>
        <td width="100%">
          <p class="c5"><br><br></p>

          <p class="c11"><span class="c8"><span class="c6">::</span> <span class=
          "c7">SmartGUI</span></span> <span class="c9">Creator for SciTE4AutoHotkey
          </span> <span class="c10">::</span></p>

          <p class="c11"><span class="c12">- Create Graphical User Interfaces (GUIs)
          for</span> <a href="http://www.autohotkey.com/"><span class=
          "c12">AutoHotkey</span></a> <span class="c12">Scripts easily
          -</span><span class="c13"><br></span></p>

          <p class="c11"><span class="c12">-</span> <span class="c14">Rajat</span>
          <span class="c12">-</span></p>

          <p class="c11"><a href=
          "mailto:meet_rajat@gawab.com?subject=Comments%20on%20SmartGUI%20Creator"><span class="c15">
          e-mail</span></a><span class="c12"><br>
          <br>
          &nbsp;</span></p>
        </td>
      </tr>
    </tbody>
  </table>

  <p class="c11">&nbsp;</p>

  <div class="c18">
    <table class="c16" id="AutoNumber1" border="1" bordercolor="#111111" cellpadding="10"
    cellspacing="10" width="100%">
      <tbody>
        <tr>
          <td width="100%">
            <ul>
              <li><a href="#Main%20Features"><span class="c4">Main
              Features</span></a></li>

              <li><a href="#Getting%20Started"><span class="c4">Getting
              Started</span></a></li>

              <li><a href="#Guidelines"><span class=
              "c4">Guidelines</span></a><span class="c4">&nbsp;&nbsp;&nbsp;&nbsp;</span>
              <span class="c17">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;---
              Important</span></li>

              <li><a href="#Basic%20Tutorial"><span class="c4">Basic
              Tutorial</span></a></li>

              <li><a href="#Tips%20&amp;%20Tricks"><span class="c4">Tips &amp;
              Tricks</span></a></li>

              <li><a href="#Limitations"><span class="c4">Limitations</span></a></li>

              <li><a href="#Homepage"><span class="c4">Homepage</span></a></li>
            </ul>
          </td>
        </tr>
      </tbody>
    </table>
  </div>

  <p class="c11">&nbsp;</p>

  <div class="c18">
    <table class="c16" id="AutoNumber2" border="1" bordercolor="#111111" cellpadding="15"
    cellspacing="0" width="100%">
      <tbody>
        <tr>
          <td width="80%">
            <span class="c19"><br></span> <a name="Main Features"><span class="c20">Main
            Features</span></a><span class="c12">:</span>

            <ul>
              <li><span class="c21">Completely 'What You See Is What You Get'&nbsp;
              -&nbsp; Move / Resize / Rename / Modify controls to see what the generated
              GUI will look, in realtime.</span></li>

              <li><span class="postbody c12">GUI Stealer - make copies of existing
              windows</span></li>

              <li><span class="postbody c12">Grid background (optional) is
              skinnable</span></li>

              <li><span class="postbody c12">E</span><span class="postbody c12">xisting
              GUI scripts created using SmartGUI are re-editable</span></li>

              <li><span class="postbody c12">GUI count can be set easily from within
              SmartGUI</span></li>

              <li><span class="postbody c12">Move a group of controls together while
              keeping their relative position intact!</span></li>

              <li><span class="postbody c12">Its FREE!!</span></li>

              <li><span class="postbody c12">Lots more...</span></li>
            </ul>
          </td>
        </tr>
      </tbody>
    </table>
  </div>

  <p>&nbsp;</p>

  <div class="c18">
    <table class="c16" id="AutoNumber2" border="1" bordercolor="#111111" cellpadding="15"
    cellspacing="0" width="100%">
      <tbody>
        <tr>
          <td width="80%">
            <span class="c19"><br></span> <a name="Getting Started"><span class=
            "c12">Getting Started</span></a><span class="c12">:</span>

            <ul>
              <li><span class="postbody c12">Open SmartGUI. You'll see the main window
              (base form) with a grid background. The grid is for placement help, it
              won't be shown in the generated GUI.</span></li>

              <li><span class="postbody c12">Use SmartGUI icon in system tray menu or
              right click menu to add buttons, checkboxes, edit fields etc. to your
              GUI.</span></li>

              <li><span class="postbody c12">When you're satisfied with the layout,
              select 'Exit' from tray menu, you'll be prompted for a file to save the GUI
              to.</span></li>

              <li><span class="postbody c12">Open the generated GUI script in a script
              editor and create sections for buttons, checkboxes etc.</span></li>

              <li><span class="postbody c12">Selecting 'Ask Control Label' from tray menu
              or selecting 'Change Label' from control menu will let you assign custom
              text labels to all controls (you can change them later in
              script).</span></li>

              <li><span class="postbody c12">Selecting 'MicroEditing' from tray menu will
              stop controls from snapping to the grid and will let you freely move
              everything.</span></li>

              <li><span class="postbody c12">Selecting 'Test GUI' from tray menu will
              instantly generate the GUI script that'll show how exactly the GUI will
              look when run from the script.</span></li>

              <li><span class="postbody c12">Selecting a group of controls, you can move
              them together while still maintaining their relative layout (see
              guidelines).</span></li>

              <li><span class="postbody c12">Selecting 'Shift + Move Group'</span>
              <span class="c22">requires shift key to be held down for a group selection.
              This option is remembered between sessions.</span></li>
            </ul>

            <p class="c23"><span class="postbody">(For more help on GUI features, open
            AutoHotkey help file, select Index Tab and type 'GUI')</span></p>
          </td>
        </tr>
      </tbody>
    </table>
  </div>

  <p class="c11">&nbsp;</p>

  <div class="c18">
    <table class="c16" id="AutoNumber12" border="1" bordercolor="#111111" cellpadding=
    "15" cellspacing="0" width="100%">
      <tbody>
        <tr>
          <td width="80%">
            <span class="c19"><br></span> <a name="Guidelines"><span class=
            "c12">Guidelines</span></a><span class="c12">:<br>
            <br></span>

            <p class="postbody c25"><span class="c24">ComboBoxes<br></span> While
            Copying, Deleting, Changing Label or Moving the ComboBox put your mouse
            cursor on the dropdown button (the one with the little triangle) and not in
            the edit field.</p>

            <p class="c25"><span class="postbody"><span class="c24">Set GUI
            Count</span><br>
            This feature asks for a script and adds (or blanks) a count to all GUI
            commands in the script.<br>
            (eg. 'Gui, Add' can be converted to 'Gui, 2:Add')</span></p>

            <p class="c25"><span class="postbody"><span class="c26">Group Move</span><br>
            1. Press left mouse button at the top of the group of target controls, and
            keep it pressed for half-second.<br>
            2. A small selection box will appear, using mouse left button draw the
            selection completely covering all the controls in group, while keeping the
            button pressed.<br>
            3. Using the control panel, move the controls together.</span></p>

            <p><span class="postbody c12"><span class="c26">Edit Script</span><br>
            1. Only GUIs with absolute placement of controls (like the ones created by
            SmartGUI) are supported, you can't edit a GUI script having relative
            placement of controls.<br>
            2. Do not put any same line comments on GUI commands in a script that you
            want to edit using SmartGUI Creator.<br>
            3. Though most GUI scripts with</span> <span class="postbody c12">absolute
            placement of controls should be editable with SmartGUI easily, un-modified
            outputs of SmartGUI are completely supported.</span></p>

            <p><span class="postbody c12"><span class="c26">GUI Stealer<br></span> Use
            this feature to directly create clones or replicas of windows or message
            boxes, instead of creating it one control at a time. Try this on Windows
            Calculator (Standard or Scientific view) to see its efficiency.</span></p>

            <p><span class="postbody c12"><span class="c26">Tabs</span><br>
            1. One Tab control per Gui is supported, having upto 256 tabs.<br>
            2.</span> <span class="c21">All controls added before the Tab are not on
            tab.<br>
            3. All controls added after the Tab is created are on the Tab that is
            selected.</span><span class="postbody c12"><br>
            &nbsp;</span></p>
          </td>
        </tr>
      </tbody>
    </table>
  </div>

  <p class="c11">&nbsp;</p>

  <div class="c18">
    <table class="c16" id="AutoNumber4" border="1" bordercolor="#111111" cellpadding="15"
    cellspacing="0" width="100%">
      <tbody>
        <tr>
          <td width="80%">
            <span class="c12"><span class="c27"><br></span> </span><span class="c12">
            <span class="c28"><a name="Basic Tutorial"><span class="c12">Basic
            Tutorial</span></a></span><span class="c29"><a name=
            "Basic Tutorial"></a><span class="c12">:</span></span></span>

            <p><span class="postbody c22">Goal: Present a custom GUI to ask user his Name
            and Year of birth, and do basic processing.</span></p>

            <p><span class="postbody c22">Steps:</span></p>

            <p><span class="postbody c22">1. Use SmartGUI to create a basic layout and
            save the script, something like this:</span></p>

            <table class="c31" id="AutoNumber5" border="1" bordercolor="#111111"
            cellpadding="0" cellspacing="0" width="100%">
              <tbody>
                <tr>
                  <td width="100%"><span class="c30">; Generated by SmartGUI Creater<br>
                  <br>
                  Gui, Add, Text, x17 y8 w120 h20, Your Name:<br>
                  Gui, Add, Text, x17 y38 w120 h20, Your Year of birth (yyyy):<br>
                  Gui, Add, Edit, x157 y8 w100 h20, Name<br>
                  Gui, Add, Edit, x157 y38 w100 h20, yyyy<br>
                  Gui, Add, Button, x27 y68 w70 h20, OK<br>
                  Gui, Add, Button, x177 y68 w70 h20, Cancel<br>
                  Gui, Show, w277 h98, Generated using SmartGUI Creator<br>
                  Return<br>
                  <br>
                  GuiClose:<br>
                  ExitApp</span></td>
                </tr>
              </tbody>
            </table>

            <p class="c25"><span class="c21">2. Add variable declarations to both edit
            fields (the letter 'v' followed by variable name). Like this:</span></p>

            <table class="c31" id="AutoNumber6" border="1" bordercolor="#111111"
            cellpadding="0" cellspacing="0" width="100%">
              <tbody>
                <tr>
                  <td width="100%"><span class="c30">Gui, Add, Edit, x157 y8 w100 h20
                  vName, Name<br>
                  Gui, Add, Edit, x157 y38 w100 h20 vYear, yyyy</span></td>
                </tr>
              </tbody>
            </table>

            <p class="c25"><span class="c21">3. Now assign functions to the 'Ok' and
            'Cancel' buttons:</span></p>

            <p class="c25"><span class="c21">Ok should do further processing.</span></p>

            <p class="c25"><span class="c21">Cancel should do unquestioned
            exit.</span></p>

            <p class="c25"><span class="c21">A button's default section name (unless
            assigned otherwise) is the word 'Button' followed by its label.</span></p>

            <p class="c25"><span class="c21">Eg.</span></p>

            <p class="c25"><span class="c21">ButtonOk</span></p>

            <p class="c25"><span class="c21">ButtonCancel</span></p>

            <p class="c25"><span class="c21">Now, we can assign the same function to
            ButtonCancel as we've done to GuiClose, ie. unquestioned exit.</span></p>

            <p class="c25"><span class="c21">This is how the ButtonCancel section should
            look like:</span></p>

            <table class="c31" id="AutoNumber7" border="1" bordercolor="#111111"
            cellpadding="0" cellspacing="0" width="100%">
              <tbody>
                <tr>
                  <td width="100%"><span class="c30">ButtonCancel:<br>
                  GuiClose:<br>
                  ExitApp</span></td>
                </tr>
              </tbody>
            </table>

            <p><span class="c21">4. Now we've to assign further processing function to
            'Ok' button.</span></p>

            <p><span class="c21">Lets say we want to calculate the user's age from the
            available data.</span></p>

            <p><span class="c21">The first step to get data from a GUI is to make it
            submit it. The command for it is:</span></p>

            <p><span class="c21">GUI, Submit</span></p>

            <p><span class="c21">Note: 'Gui, Submit' is required only if you need to get
            data from edit fields, checkboxes etc.</span></p>

            <p><span class="c21">So this is how the ButtonOk function should look
            like:</span></p>

            <table class="c31" id="AutoNumber8" border="1" bordercolor="#111111"
            cellpadding="0" cellspacing="0" width="100%">
              <tbody>
                <tr>
                  <td width="100%"><span class="c30">ButtonOk:<br>
                  Gui, submit<br>
                  Age = %A_year% ;%a_year% holds the current year<br>
                  Age -= %Year%&nbsp;&nbsp; ; %year% holds the year submitted by user<br>
                  Msgbox, Hey %name%! You're %Age% years old now!<br>
                  ExitApp</span></td>
                </tr>
              </tbody>
            </table>

            <p><span class="c21">5. So finally our complete script should look like
            this:</span></p>

            <table class="c31" id="AutoNumber9" border="1" bordercolor="#111111"
            cellpadding="0" cellspacing="0" width="100%">
              <tbody>
                <tr>
                  <td width="100%">
                    <span class="c30">; Generated by SmartGUI Creater<br>
                    <br>
                    Gui, Add, Text, x17 y8 w120 h20, Your Name:<br>
                    Gui, Add, Text, x17 y38 w120 h20, Your Year of birth (yyyy):<br>
                    Gui, Add, Edit, x157 y8 w100 h20 vName, Name<br>
                    Gui, Add, Edit, x157 y38 w100 h20 vYear, yyyy<br>
                    Gui, Add, Button, x27 y68 w70 h20, OK<br>
                    Gui, Add, Button, x177 y68 w70 h20, Cancel<br>
                    Gui, Show, w277 h98, Generated using SmartGUI Creator<br>
                    Return</span>

                    <p class="c32"><span class="c21">ButtonCancel:<br>
                    GuiClose:<br>
                    ExitApp</span></p>

                    <p class="c32"><span class="c21">ButtonOk:<br>
                    Gui, submit<br>
                    Age = %A_year% ;%a_year% holds the current year<br>
                    Age -= %Year%&nbsp;&nbsp; ; %year% holds the year submitted by
                    user<br>
                    Msgbox, Hey %name%! You're %Age% years old now!<br>
                    ExitApp</span></p>
                  </td>
                </tr>
              </tbody>
            </table>

            <p><span class="c21">Remember that in a control's section you can include
            just about anything, like run a program, open/close a window or send key
            presses.</span></p>

            <p><span class="c21"><span class="c26">Note</span>: In both the sections
            (ButtonOk and ButtonCancel) there's no 'Return' command at the end, this is
            because both scripts exit at the end (ExitApp). Had this not been the case, a
            'Return' would be required.</span></p>

            <p><span class="c33">More Examples:</span></p>

            <p class="c25"><span class="c21">1. This will run notepad on the press of a
            button:</span></p>

            <table class="c31" id="AutoNumber10" border="1" bordercolor="#111111"
            cellpadding="0" cellspacing="0" width="100%">
              <tbody>
                <tr>
                  <td width="100%"><span class="c30">; Generated by SmartGUI Creater<br>
                  <br>
                  Gui, Add, Button, x16 y7 w80 h30, Notepad<br>
                  Gui, Show, w114 h49, Generated using SmartGUI Creator<br>
                  Return<br>
                  <br>
                  ButtonNotepad:<br>
                  Run, Notepad<br>
                  Return<br>
                  <br>
                  GuiClose:<br>
                  ExitApp</span></td>
                </tr>
              </tbody>
            </table>

            <p class="c25"><span class="c21">2. This will show your windows
            version:</span></p>

            <table class="c31" id="AutoNumber11" border="1" bordercolor="#111111"
            cellpadding="0" cellspacing="0" width="100%">
              <tbody>
                <tr>
                  <td width="100%"><span class="c30">; Generated by SmartGUI Creater<br>
                  <br>
                  Gui, Add, Button, x16 y7 w80 h30, My Windows<br>
                  Gui, Show, w114 h49, Generated using SmartGUI Creator<br>
                  Return<br>
                  <br>
                  ButtonMyWindows:<br>
                  msgbox, %A_OSVersion%<br>
                  Return<br>
                  <br>
                  GuiClose:<br>
                  ExitApp</span></td>
                </tr>
              </tbody>
            </table>

            <p><span class="c21">Now go ahead and explore.</span></p>
          </td>
        </tr>
      </tbody>
    </table>
  </div>

  <p class="c11">&nbsp;</p>

  <div class="c18">
    <table class="c16" id="AutoNumber13" border="1" bordercolor="#111111" cellpadding=
    "15" cellspacing="0" width="100%">
      <tbody>
        <tr>
          <td width="80%">
            <a name="Tips &amp; Tricks"><span class="c34">Tips &amp;
            Tricks</span></a><span class="c12">:</span>

            <ul>
              <li><span class="postbody c12">Though the generated GUI will be positioned
              exactly like the way you modelled it in SmartGUI, if you want it to be
              centered on the screen then remove the x and y options from 'Gui, Show'
              command.</span></li>

              <li><span class="postbody c12">Turning on 'MicroEditing' before adding a
              Groupbox or a Picture is a good idea.</span></li>

              <li><span class="postbody c12">To move SmartGUI window either horizontally
              or vertically without accidentally altering the other, activate SmartGUI
              window, press alt+space, then press M, and then use arrow keys.</span></li>

              <li><span class="postbody c12">Many controls (like checkbox, radio, slider)
              have a 'tiny look' mode too (theme dependent). By default the height of
              most controls created in SmartGUI initially is 3 blocks, but to achieve the
              'tiny look' mode, reduce their height to 2 blocks.</span></li>

              <li><span class="postbody c12">If you want to change the default grid, just
              put any 1024*768 .gif file in SmartGUI's folder and name it
              'Grid.gif'.</span></li>

              <li><span class="postbody c12">Selecting the 'Test GUI' option from the
              menu is like an acid test, the final way to be sure that the generated GUI
              will be exactly as you want it to be.</span></li>

              <li><span class="postbody c12">Pressing 'Esc' on Save GUI screen will exit
              without saving the GUI to clipboard or file.<br></span></li>

              <li><span class="postbody c12">Reading this manual fully is a great
              idea!</span></li>
            </ul>
          </td>
        </tr>
      </tbody>
    </table>
  </div>

  <p>&nbsp;</p>

  <div class="c18">
    <table class="c16" id="AutoNumber2" border="1" bordercolor="#111111" cellpadding="15"
    cellspacing="0" width="100%">
      <tbody>
        <tr>
          <td width="80%">
            <a name="Limitations"><span class="c12">Limitations</span></a><span class=
            "c35">:</span>

            <ul>
              <li><span class="postbody c12">Only one Tab control is allowed, though each
              Tab control can upto have 256 pages.</span></li>

              <li><span class="postbody c12">Wherever you place the UpDown control in
              SmartGUI, the resultant GUI will show it adjacent to the last control
              created.</span></li>

              <li><span class="postbody c12">Sometimes you might notice some controls
              disappearing behind the grid or the Tab control. That is a known
              issue.<br></span></li>
            </ul>
          </td>
        </tr>
      </tbody>
    </table>
  </div>
</body>
</html>
